package com.xhsj.user.pms.workflow.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xhsj.user.pms.patent.domain.OpinionFile;
import com.xhsj.user.pms.patent.domain.PatentFile;
import com.xhsj.user.utils.UserUtils;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import java.util.Date;
import java.util.List;
import java.util.Set;

/**
 * @Author: liuqinghua
 * @Description:
 * @Data:2021/1/7
 */
@Data
public class ExecProgressDto {
    // 交底书id/业务id
    @NotBlank(message="disclosureId不能为空")
    private String disclosureId;
    // 流程标识
    @NotBlank(message="flowCode不能为空")
    private int flowCode;
    // 当前用户id
    private Long userId= UserUtils.getLoginAppUser().getUserId();
    // 当前用户的角色id
    private Set<Long> roleIds;
    // 当前用户的部门id
    private Set<Long> deptIds;
    // 当前节点id
    @NotBlank(message="nodeId不能为空")
    private String nodeId;
    @NotBlank(message="nodeName不能为空")
    private String nodeName;

    private String label;
    // 下一个流程审批人
    private List<Long> users;
    // 流程id
    @NotBlank(message="processTaskId不能为空")
    private String processTaskId;
    // 页面跳转标识
    private int jumpForm;

   // 任务开始时间
   @NotBlank(message="createTime不能为空")
   @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date createTime;

    private String fullName=UserUtils.getLoginAppUser().getFullName();

    private String opinionText;

    private List<OpinionFile> opinionFile;

    private List<PatentFile> patentFileList;

    // 流程创建者
    @NotBlank(message="createUser不能为空")
    private Long createUser;

    // 0用来标识时开始流程
    private Boolean startFlow = false;

    // 0用来标识是否发送消息
    private Boolean sendAliyun = true;

    // 等级案件
    private Integer significanceIdentify;
}
